Make xm debug-keys talk XenAPI; Add send_debug_keys to host
authorEwan Mellor <ewan@xensource.com>
Tue, 20 Mar 2007 17:30:05 +0000 (17:30 +0000)
committerEwan Mellor <ewan@xensource.com>
Tue, 20 Mar 2007 17:30:05 +0000 (17:30 +0000)
Signed-off-by: Tom Wilkie <tom.wilkie@gmail.com>
tools/python/xen/xend/XendAPI.py
tools/python/xen/xm/main.py

index 595e577901d33216c9243daad22c80bf62fb5eef..70075c560b3a436a27b040df12625ab4519e54e3 100644 (file)
@@ -665,7 +665,8 @@ class XendAPI(object):
                     ('add_to_other_config', None),
                     ('remove_from_other_config', None),
                     ('dmesg', 'String'),
-                    ('get_log', 'String')]
+                    ('get_log', 'String'),
+                    ('send_debug_keys', None)]
     
     host_funcs = [('get_by_name_label', 'Set(host)')]
 
@@ -752,6 +753,11 @@ class XendAPI(object):
         log_buffer = log_file.read()
         return xen_api_success(log_buffer)
 
+    def host_send_debug_keys(self, _, host_ref, keys):
+        node = XendNode.instance()
+        node.send_debug_keys(keys)
+        return xen_api_success_void()
+
     def host_get_record(self, session, host_ref):
         node = XendNode.instance()
         dom = XendDomain.instance()
index 24ac41b8770a60e3660f5477cc1f5c35a70664c0..0ae9f973782af446da509a38e3c81740af76bb34 100644 (file)
@@ -1549,7 +1549,15 @@ def xm_trigger(args):
 
 def xm_debug_keys(args):
     arg_check(args, "debug-keys", 1)
-    server.xend.node.send_debug_keys(str(args[0]))
+
+    keys = str(args[0])
+    
+    if serverType == SERVER_XEN_API:
+        server.xenapi.host.send_debug_keys(
+            server.xenapi.session.get_this_host(),
+            keys)
+    else:
+        server.xend.node.send_debug_keys(keys)
 
 def xm_top(args):
     arg_check(args, "top", 0)